package com.atgugui.eduservice.service;

import com.atgugui.eduservice.entity.EduCourse;
import com.atgugui.eduservice.entity.vo.CourseInfoVo;
import com.atgugui.eduservice.entity.vo.CoursePublishVo;
import com.atgugui.eduservice.entity.vo.front.CompletedCourseInfo;
import com.atgugui.eduservice.entity.vo.front.QueryFrontCourseVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.HashMap;

/**
 * <p>
 * 课程 服务类
 * </p>
 *
 * @author testjava
 * @since 2021-08-29
 */
public interface EduCourseService extends IService<EduCourse> {

    String addCourseInfo(CourseInfoVo courseInfoVo);

    CourseInfoVo getCourseInfoById(String courseId);

    void updateCourseInfo(CourseInfoVo courseInfoVo);

    CoursePublishVo publishCourseInfo(String courseId);

    void removeCourseById(String courseId);

    HashMap<String, Object> getFrontCoursePageList(Page<EduCourse> coursePage, QueryFrontCourseVo queryFrontCourseVo);

    CompletedCourseInfo getCompleteCourseInfo(String courseId);
}
